-
Notifications
You must be signed in to change notification settings - Fork 2.1k
workspace home #17815
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
workspace home #17815
Conversation
- new nav items added - updated footer nav items
|
@cubic-dev-ai have a look at my draft PR |
@andz-bb I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 issue found across 39 files
Confidence score: 4/5
- Timezone-sensitive expectations in
packages/server/src/api/routes/tests/workspaceHome.spec.tscan intermittently fail outside UTC, so there is some risk of flakes in other environments. - Overall risk remains low since the problem is limited to test determinism rather than runtime behavior, keeping the PR nearly merge-ready.
- Pay close attention to
packages/server/src/api/routes/tests/workspaceHome.spec.ts- adjust date construction to UTC to keep assertions reliable.
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="packages/server/src/api/routes/tests/workspaceHome.spec.ts">
<violation number="1" location="packages/server/src/api/routes/tests/workspaceHome.spec.ts:80">
P2: These expectations build ISO strings using local-time `new Date(...)`, so the assertions break when the tests run in a non‑UTC timezone. Use UTC-based dates to keep the test deterministic across environments.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
|
@cubic-dev-ai have another look at my draft PR |
@andz-bb I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2 issues found across 40 files
Confidence score: 3/5
- Potential styling break in
packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelteif CSS nesting isn’t enabled; hover/active/favorite styles may not parse and could regress UI behavior. - Clickable context menu risk in
packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.sveltebecause.actionsdisables pointer events and.ctx-btndoesn’t re-enable them, so the icon may be visible but not interactive. - Score reflects concrete user-facing UI/interaction regressions with medium-to-high severity in a key table component.
- Pay close attention to
packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte- CSS nesting and pointer-events may block expected styling and clicks.
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte">
<violation number="1" location="packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte:237">
P1: The component CSS uses nested selectors (`&:hover`, `&.active`, etc.) inside a plain `<style>` block. If CSS nesting isn’t enabled in the build pipeline, this won’t parse and hover/active/favourite styling will break. Rewrite to standard CSS selectors (or explicitly use a preprocessor like `lang="scss"`).</violation>
<violation number="2" location="packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte:362">
P2: `.actions` sets `pointer-events: none`, but `.ctx-btn` never re-enables pointer events even though it has a click handler. This can make the context menu icon visible but not clickable (especially on touch/no-hover).</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte
Show resolved
Hide resolved
packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte
Show resolved
Hide resolved
|
@cubic-dev-ai can you do a final comprehensive review on this whole PR? check everything over |
@andz-bb I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3 issues found across 41 files
Confidence score: 4/5
- Overall risk is low; issues are moderate in severity and don’t suggest widespread breakage, so this looks safe to merge with minor fixes.
- Most severe concern is potential reverse tabnabbing when opening new tabs without
noopener,noreferrer, which can exposewindow.openerand is a security hardening gap. - UI polish issue: sort indicator direction is inverted, so descending sorts show the ascending arrow, which could confuse users.
- Pay close attention to
packages/builder/src/pages/builder/workspace/[application]/home/index.svelte,packages/builder/src/pages/builder/workspace/[application]/_components/SideNav/SideNav.svelte,packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte- missing noopener/noreferrer and inverted sort indicator.
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="packages/builder/src/pages/builder/workspace/[application]/home/index.svelte">
<violation number="1" location="packages/builder/src/pages/builder/workspace/[application]/home/index.svelte:308">
P2: Opening a new tab without `noopener`/`noreferrer` exposes window.opener and enables tabnabbing. Add `noopener,noreferrer` when calling window.open.</violation>
</file>
<file name="packages/builder/src/pages/builder/workspace/[application]/_components/SideNav/SideNav.svelte">
<violation number="1" location="packages/builder/src/pages/builder/workspace/[application]/_components/SideNav/SideNav.svelte:778">
P2: Add noopener/noreferrer when opening external links in a new tab to prevent reverse tabnabbing.</violation>
</file>
<file name="packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte">
<violation number="1" location="packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte:70">
P2: Sort indicator direction is inverted: the "asc" class is applied when sortOrder is "desc", so descending sorts render the ascending arrow. Apply the class when sortOrder is "asc".</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
packages/builder/src/pages/builder/workspace/[application]/home/index.svelte
Outdated
Show resolved
Hide resolved
packages/builder/src/pages/builder/workspace/[application]/_components/SideNav/SideNav.svelte
Outdated
Show resolved
Hide resolved
| <span | ||
| class="sort-indicator" | ||
| class:sort-indicator--active={isSorted("name")} | ||
| class:sort-indicator--asc={isSorted("name") && sortOrder === "desc"} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P2: Sort indicator direction is inverted: the "asc" class is applied when sortOrder is "desc", so descending sorts render the ascending arrow. Apply the class when sortOrder is "asc".
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/builder/src/pages/builder/workspace/[application]/home/_components/HomeTable.svelte, line 70:
<comment>Sort indicator direction is inverted: the "asc" class is applied when sortOrder is "desc", so descending sorts render the ascending arrow. Apply the class when sortOrder is "asc".</comment>
<file context>
@@ -0,0 +1,416 @@
+ <span
+ class="sort-indicator"
+ class:sort-indicator--active={isSorted("name")}
+ class:sort-indicator--asc={isSorted("name") && sortOrder === "desc"}
+ >
+ <Icon
</file context>
Description
Addresses
#17739
Screenshots
Launchcontrol
new workspace home screen
Summary by cubic
Adds a feature-flagged Workspace Home that unifies Apps, Automations, and Agents into a single view with filters, search, sorting, quick create actions, and basic workspace metrics. Updates the side navigation and adds backend/worker endpoints for metrics and GitHub stars.
New Features
Refactors
Written for commit 6a00090. Summary will update on new commits.